//
//@File    :	6.8_cctypes.cpp
//@Time    :	2021/08/08 10:48:40
//@Auther  :	Sun Sheng
//@Contact :	970340843@qq.com
//@Desc    :	using the ctype.h library
//

#include <iostream>
#include <cctype>
int main()
{
    using namespace std;
    cout<<"Enter text for analysis,and type @"
          " to terminate input.\n";
    char ch;
    int whitespace = 0;
    int digits = 0;
    int chars = 0;
    int punct = 0;
    int others = 0;

    cin.get(ch);
    while (ch!='@')
    {
        if (isalpha(ch))
        {
            chars++;
        }
        else if (isspace(ch))
        {
            whitespace++;
        }
        else if (isdigit(ch))
        {
            digits++;
        }
        else if (ispunct(ch))
        {
            punct++;
        }
        else
        {
            others++;
        }
        cin.get(ch);
    }
    cout<<chars<<" letters, "
        <<whitespace<<" whitespace, "
        <<digits<<" digits, "
        <<punct<<" punctuations, "
        <<others<<" others.\n";
    system("pause");
    return 0;
}